const fs = require('fs');

function readFile(filePath) {
    return new Promise((resolve, reject) => {
        fs.readFile(filePath, 'utf8', (err, data) => {
            if (err) {
                reject(err);
            } else {
                resolve(data);
            }
        });
    });
}

;
async function go() {
    /* 2. 内部处理，把可能出错的代码进行 try catch 后端 链接数据库 用户体验 不能直接把代码错误抛给用户 系统繁忙，联系客服！ */

    try {

        let dataA = await readFile('./data/1.txt');
        let dataB = await readFile('./data/22.txt');
        let dataC = await readFile('./data/3.txt');
        console.log(dataA, dataB, dataC);

    } catch (e) {

        console.log('文件读取错误了', e);
        return; // 如果出错，try-catch-finally正常执行，但是该语句之后的代码不执行


    } finally {
        console.log('无论是否出错，都执行');

    }

    console.log('inner');

}


/* 1. 函数外部处理 */
go();

console.log('end');